Jenkins教程(三)添加凭据与流水线拉取Git代码 |
您所在的位置:网站首页 › svn clone代码 › Jenkins教程(三)添加凭据与流水线拉取Git代码 |
前言
本文旨在配置凭据、使用Git仓库中的Jenkinsfile与使用声明式流水线拉取Git代码 使用SVN等其他版本控制工具,请参考使用Pipeline-Syntax生成对应代码块 凭据(credentials)是什么凭据(credentials)是访问其他系统的认证信息,可以是账号/密码、SSH密钥、加密文件等,Jenkins可以通过设置的凭据与其它第三方应用进行认证,在可信与可控的范围内,完成第三方交互。 Jenkins可以存储以下类型的credentials: Secret text - API token之类的token (如GitHub个人访问token), Username and password - 可以为独立的字段,也可以为冒号分隔的字符串:username:password Secret file - 保存在文件中的加密内容 SSH Username with private key - SSH 公钥/私钥对, Certificate - a PKCS#12 证书文件 和可选密码 Docker Host Certificate Authentication - Docker 仓库认证信息 为什么添加凭据为了最大限度地提高安全性,在Jenins中配置的 credentials 以加密形式存储在Jenkins 主节点上(用Jenkins ID加密),并且只能通过 credentials ID在Pipeline项目中获取 这最大限度地减少了向Jenkins用户公开credentials真实内容的可能性,并且阻止了将credentials复制到另一台Jenkins实例 企业的代码一般会存在自己公司的版本控制私服,一般都会输入账号密码,在脚本中直接暴露账号密码是非安全的 如何添加凭据添加凭据在Jenkins中只能添加全局凭据 首先需要确保当前的登录的用户拥有创建凭据权限的能力能看到以下的凭据,可以点,基本上是会有权限的,不排除使用更精细的权限控制只读的情况 一般而言,管理员用户拥有此权限 点击凭据->系统->全局凭据点击左上角添加凭据,添加用户名与密码,确定,完成创建凭据 类型(kind)参考上小节中类型的介绍,这里以Username with password演示 注意:描述不要写!描述不要写!描述不要写!这是Jenkins的bug,第一次创建时如果写描述会卡住,无法登录!ID会自动生成,不要管 确定,如下图所示添加凭据成功 这里使用Github上的代码进行演示,虽然没有使用私服或私有仓库,只为演示效果 为了演示下Jenkinsfile放在Git上是如何使用的,这里新创建了一个Git的仓库用来保存以后的Jenkinsfile内容 https://github.com/hellxz/JenkinsfileTutorials 创建个新的流水线工程 工程描述可以不写,这里就不表述了,这里直接说说如何使用版本控制中的流水线脚本 我准备的Jenkinsfile仓库中的Jenkinsfile,这里只拉取一个简单的Springboot的demo pipeline { agent any stages{ stage('Pull Git Demo') { steps{ //拉取代码,这里也是可以使用凭据的,为了方便没贴出来 git 'https://github.com/hellxz/springboot-demo1.git' } } } }git 'https://github.com/hellxz/springboot-demo1.git'这行代码是由Pipeline-Syntax生成的 入口在上边配置工程的最下边,如图 流水线语法 最后我们把生成好的代码,整合到我们的Jenkinsfile中,提交到Git仓库中 启动构建工程 查看代码拉取结果回到Classic UI -> Build Now 开始构建,构建完成,提示没有错误,点开最新的构建#1 -> Console Output 文章内写的顺序比较乱,流程我重新顺一下 编写Jenkinsfile上传Github(或其它SCM) 创建凭据(Jenkinsfile项目或待拉取有密码的项目) 创建Jenkins工程,使用Jenkinsfile的SCM(可使用凭据),自定义工程注释与参数 启动工程,查看Console Output输出下篇打算写下使用现在拉下来的Java项目,用Maven进行构建打包,安装BlueOcean插件部分 引文Jenkins官方文档 使用 credentials 本文系Hellxz学习与实践文章,禁止布布扣、码迷、爱码网等第三方爬虫网站爬取,转载请在醒目位置注明出处:https://www.cnblogs.com/hellxz/p/pipeline_pull_project.html |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |